// subpacks/pages_first/faceSignIn/faceSignIn.js
const appg = getApp().globalData
import {
  formatTime
} from '../../../utils/date_formatter'
import Dialog from '@vant/weapp/dialog/dialog';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    bottom_bj: null,
    sid: null,
    SignInfo: null,
    SignInfoResult: null,
    end: {
      isEnd: false, //true表示截止时间到
      endTime: null
    },
    uid: null
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    const sid = options.sid
    this.setData({
      bottom_bj: appg.url,
      time: null,
      sid
    })

  },
  // 获取签到信息
  async getSignInInfo() {
    try {
      const json = await getApp().$axios("/getSignInfo", "POST", {
        sid: this.data.sid,
        uid: appg.userInfo.id
      })
      if (json.status !== 200) {
        wx.showToast({
          title: json.data,
          icon: 'error'
        })
        return
      }
      console.log(json.data);
      const {
        SignInfo,
        SignInfoResult
      } = json.data
      this.setData({
        SignInfo,
        SignInfoResult
      })
      this.computeEndTime(SignInfo.endTime)
    } catch (error) {
      wx.showToast({
        title: error.msg,
        icon: 'error'
      })
    }
  },
  // 计算截至时间
  computeEndTime(date) {
    // 截至时间
    const endtime = formatTime(date, "YYYY/MM/DD HH:mm")
    // 判断是否截至
    if (date < new Date().getTime()) {
      this.setData({
        end: {
          isEnd: true,
          endTime: endtime
        }
      })
    } else {
      this.setData({
        end: {
          isEnd: false,
          endTime: endtime
        }
      })
    }
  },
  // 实时获取当前时间
  getTime() {
    // 获取当前时间
    const t = formatTime(new Date().getTime(), 'HH:mm:ss')
    this.setData({
      time: t
    })
  },
  // 签到过期按钮
  error() {
    Dialog.alert({
      title: '提示',
      message: '签到时间以过期，请联系老师修改。',
      theme: 'round-button',
    }).then(() => {
      // on close
    });
  },
  // 去签到页
  to_sign() {
    wx.navigateTo({
      url: './faceDetect/faceDetect?sid=' + this.data.sid,
    })
  },
  // 签到列表页
  toSignList() {
    wx.navigateTo({
      url: '/subHoliday/signInList/sign_in_list',
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
    this.getTime()
    setInterval(() => {
      this.getTime()
    }, 1000)
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.setData({
      uid: appg.userInfo.id
    })
    this.getSignInInfo()
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})